#ifndef __JAVAMAPVER3_H__
#define __JAVAMAPVER3_H__

#include <FApp.h>
#include <FBase.h>
#include <FSystem.h>
#include <FUi.h>

#include "Ui/FormManager.h"
#include "Ui/BookmarkPlaceForm.h"
#include "Ui/BookmarkPlaceViewerForm.h"
#include "Ui/ChangeMapTypeForm.h"
#include "Ui/FindDirectionForm.h"
#include "Ui/FindLocationForm.h"
#include "Ui/TrafficJamForm.h"
#include "Ui/SearchPlaceForm.h"
#include "Ui/ShowFindLocationResultForm.h"
#include "Ui/ShowFindLocationResultForm.h"
#include "Ui/TwitterLoginForm.h"
#include "Ui/TwitterForm.h"
#include "Ui/ShowFindDirectionResultForm.h"
#include "Ui/GoogleBuzz/Googlebuzzform.h"
/**
 * [WebBasedApp] application must inherit from Application class
 * which provides basic features necessary to define an application.
 */
class JavaMapVer3: public Osp::App::Application,
		public Osp::System::IScreenEventListener {
public:

	/**
	 * [JavaMapVer3] application must have a factory method that creates an instance of itself.
	 */
	static Osp::App::Application* CreateInstance(void);

	//private void AddFormToFormManager()

public:
	JavaMapVer3();
	~JavaMapVer3();

public:

	// Called when the application is initializing.
	bool OnAppInitializing(Osp::App::AppRegistry& appRegistry);

	// Called when the application is terminating.
	bool OnAppTerminating(Osp::App::AppRegistry& appRegistry,
			bool forcedTermination = false);

	// Called when the application's frame moves to the top of the screen.
	void OnForeground(void);

	// Called when this application's frame is moved from top of the screen to the background.
	void OnBackground(void);

	// Called when the system memory is not sufficient to run the application any further.
	void OnLowMemory(void);

	// Called when the battery level changes.
	void OnBatteryLevelChanged(Osp::System::BatteryLevel batteryLevel);

	// Called when the screen turns on.
	void OnScreenOn(void);

	// Called when the screen turns off.
	void OnScreenOff(void);
};

#endif	//__JAVAMAPVER3_H__
